is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
↳ QTRS
↳ Overlay + Local Confluence
is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
is_empty(nil)
is_empty(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
APPEND(l1, l2) → IFAPPEND(l1, l2, is_empty(l1))
IFAPPEND(l1, l2, false) → TL(l1)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
APPEND(l1, l2) → IS_EMPTY(l1)
IFAPPEND(l1, l2, false) → HD(l1)
is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
is_empty(nil)
is_empty(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
APPEND(l1, l2) → IFAPPEND(l1, l2, is_empty(l1))
IFAPPEND(l1, l2, false) → TL(l1)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
APPEND(l1, l2) → IS_EMPTY(l1)
IFAPPEND(l1, l2, false) → HD(l1)
is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
is_empty(nil)
is_empty(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
APPEND(l1, l2) → IFAPPEND(l1, l2, is_empty(l1))
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
is_empty(nil) → true
is_empty(cons(x, l)) → false
hd(cons(x, l)) → x
tl(cons(x, l)) → l
append(l1, l2) → ifappend(l1, l2, is_empty(l1))
ifappend(l1, l2, true) → l2
ifappend(l1, l2, false) → cons(hd(l1), append(tl(l1), l2))
is_empty(nil)
is_empty(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
APPEND(l1, l2) → IFAPPEND(l1, l2, is_empty(l1))
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
is_empty(nil) → true
is_empty(cons(x, l)) → false
tl(cons(x, l)) → l
is_empty(nil)
is_empty(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
hd(cons(x0, x1))
append(x0, x1)
ifappend(x0, x1, true)
ifappend(x0, x1, false)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
APPEND(l1, l2) → IFAPPEND(l1, l2, is_empty(l1))
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
is_empty(nil) → true
is_empty(cons(x, l)) → false
tl(cons(x, l)) → l
is_empty(nil)
is_empty(cons(x0, x1))
tl(cons(x0, x1))
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
APPEND(nil, y1) → IFAPPEND(nil, y1, true)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
APPEND(nil, y1) → IFAPPEND(nil, y1, true)
is_empty(nil) → true
is_empty(cons(x, l)) → false
tl(cons(x, l)) → l
is_empty(nil)
is_empty(cons(x0, x1))
tl(cons(x0, x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
is_empty(nil) → true
is_empty(cons(x, l)) → false
tl(cons(x, l)) → l
is_empty(nil)
is_empty(cons(x0, x1))
tl(cons(x0, x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
tl(cons(x, l)) → l
is_empty(nil)
is_empty(cons(x0, x1))
tl(cons(x0, x1))
is_empty(nil)
is_empty(cons(x0, x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(l1, l2, false) → APPEND(tl(l1), l2)
tl(cons(x, l)) → l
tl(cons(x0, x1))
IFAPPEND(cons(x0, x1), y1, false) → APPEND(x1, y1)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ UsableRulesProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(cons(x0, x1), y1, false) → APPEND(x1, y1)
tl(cons(x, l)) → l
tl(cons(x0, x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(cons(x0, x1), y1, false) → APPEND(x1, y1)
tl(cons(x0, x1))
tl(cons(x0, x1))
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
APPEND(cons(x0, x1), y1) → IFAPPEND(cons(x0, x1), y1, false)
IFAPPEND(cons(x0, x1), y1, false) → APPEND(x1, y1)
From the DPs we obtained the following set of size-change graphs: